鐵人賽標題中的不上不下
我想我一路過來的文章應該都感覺得出來(應該吧?)
不前不後 就是我現在的工作啦 不是前端也不是後端
我現在是 Full Stack Engineer
前端採用React/Redux 後端採用Node.js/Expres.js MySQL/PostgreSQL/Redis等
跟同事分工合作開發 會在前後端兩者輪流作
這sprint作前端 下sprint作後端等等
也會跟 PM 與 UI/UX designer 合作開發好用有用的新功能
跟 QA 合作確保產品的品質
跟 DevOps 合作負責 deployment and monitor
我一直覺得full-stack是一個合理的發展方向
前端只是在JS開始蓬勃發展 SPA出來之後才慢慢開始出現的
畢竟一個產品本來就不是單一個面相能完成的
一個好的軟體工程師要解決問題
本來就不應該分哪一端
但我們在看問題的時候 應該有更大的picture去想
今天這個問題從UI下手好解好用 那就去改前端
或是應該從後端下手才有效率需要簡單的deploy 那就從後端去解
不用侷限自己
當然最後可能都還是需要專精在某一塊
但是我覺得一開始廣泛的學習和經驗的累積都是很重要的
從設計到前端到後端到部屬等等
會對整個web開發有更全面的了解
慢慢感覺在兩方面進步
進而有更全面的思維
某種時候也是一種調劑身心的感覺
有時候寫寫React元件
調整CSS達到我們要的layout
去計較每個pixel
有時候去計較後端的邏輯 考慮流量大的情形
或是後端某個service卡住等等
或是要去看server上的log與data找問題
寫前後端的心得與感覺是完全不同的
換換口味也算是種生活上的趣味XD
參考 良葛格老師 這篇 全端開發者神話
以及內文所提到的What is a Full Stack developer?
我覺得如我前面所述 心態上的Full Stack 是很重要的
是不是能從UI/UX, network/OS/platform, data model and DB, Business Logic, Frontend & API 甚至是整個更大的商業需求思考
進而應用工程上的discipline去實現一套完整的solution才是一個general software engineer的價值
不然就只是跟著新技術學技術學好玩的而已
但有時候我跟別人說到我是個 Full Stack Engineer 全端工程師
有些人總是會帶著一抹拍拍的微笑說聲辛苦了
我是不太能理解就是
也可能是我看過的公司太少
但覺得就像上面文章良老師所說
如果某間公司的心態只是想要壓榨人力的話
那什麼位置都一樣的
有讀者也是全端工程師嗎?
歡迎交流交流一下喔~ :)